public class AutoConvert {
    public static void main(String[] args) {
        int num = 'a'; // char->int
        double d1 = 80; // int -> double
        System.out.println(num);
        System.out.println(d1);
        // 有多种类型的数据混合运算时，系统首先自动将所有数据转换成容量最大的那种数据类型，然后计算
        int n1 = 10;
        //float d1 = n1 + 1.1; // 错误，n1 + 1.1的结果类型是double
        // (byte,short) 和 char 之间不会相互转换
        byte b1 = 10; //ok,数值赋值，判断范围 -128-127
        int n2 = 1;
        /* byte b2 = n2; //错误，原因：如果是用变量赋值，则判断类型，大容量不能赋值给小容量
        char c1 = b1; //错 ，byte不能自动转为char,short同理
        */
        // byte,short,char三者可以计算，在计算时首先转为int类型
        byte b2 =1 ;
        short s1 =1;
        //short s2 = b2 + s1; //错，这个计算的结果类型是int
        byte b3 =1 ;
        //byte b4 = b2 + b3; //错，byte,short,char只要参与运算，类型都转为int
    }
}
